package com.example.excel_db.repository;

import com.example.excel_db.entity.ExcelImportTask;
import com.example.excel_db.entity.ExcelTemplate;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * Excel导入任务存储库
 */
@Repository
public interface ExcelImportTaskRepository extends JpaRepository<ExcelImportTask, Long> {
    
    /**
     * 根据模板查找任务
     * 
     * @param template 模板对象
     * @return 任务列表
     */
    List<ExcelImportTask> findByTemplate(ExcelTemplate template);
    
    /**
     * 根据状态查找任务
     * 
     * @param status 任务状态
     * @return 任务列表
     */
    List<ExcelImportTask> findByStatus(ExcelImportTask.TaskStatus status);
    
    /**
     * 分页查询任务
     * 
     * @param template 模板对象
     * @param pageable 分页参数
     * @return 任务分页结果
     */
    Page<ExcelImportTask> findByTemplate(ExcelTemplate template, Pageable pageable);
}